AssetGraph1.3から1.4へのアップグレード


概要

軽い気持ちでアプデしたらassetファイルに互換性がなくて困った。

こんな時のために1.3にはjson export機構が入っていて、

じゃあ1.3でexportしたjsonを1.4にインポートすれば、、!

ってやったらそっちは軽微な罠があったんで回避した。



内容

1.3で出力したjson1.4に食わせると、インポート直後のグラフがnullを含んでいて吹っ飛ぶ。

これは、json -> グラフオブジェクト への変換部分で、AG1.4では含まれていないクラス情報が存在するため。


具体的にいうと

UnityEngine.AssetBundles.GraphTool

っていうnamespaceが1.3 → 1.4で滅んで、


UnityEngine.AssetGraph

に変わっているため。


AGからexportしたファイルに型情報の記載があり、

その情報をもとにリフレクションでインスタンスを生成するんだけど、その部分のサポートが特にないため、

1.3で作ったものを1.4に持って来ると滅ぶ。



今後

プルリク出しておいたんでその、はい。

今すぐなんとかしたい人は、

1.3から出力したjsonの中でUnityEngine.AssetBundles.GraphToolって書いてあるところを

全てUnityEngine.AssetGraphに置換してから1.4にimportすると助かる。